<template>
	<div class="order_list">
		<div class="common_form_search">
			<el-form ref="searchForm" :inline="true" :model="searchForm">
				<el-form-item label="订单号">
					<el-input style="width:220px" v-model="searchForm.orderNo" placeholder="请输入订单号" clearable>
					</el-input>
				</el-form-item>
				<el-form-item label="商品名称">
					<el-input v-model="searchForm.goodsName" placeholder="请输入商品名称" clearable></el-input>
				</el-form-item>
				<el-form-item label="用户名">
					<el-input v-model="searchForm.receivingName" placeholder="请输入用户名" clearable></el-input>
				</el-form-item>
				<el-form-item label="手机号">
					<el-input v-model="searchForm.receivingMobile" placeholder="请输入手机号" clearable></el-input>
				</el-form-item>
				<el-form-item label="风控姓名">
					<el-input v-model="searchForm.riskName" placeholder="请输入风控姓名" clearable></el-input>
				</el-form-item>
				<el-form-item label="风控手机号">
					<el-input v-model="searchForm.riskMobile" placeholder="请输入风控手机号" clearable></el-input>
				</el-form-item>
				<el-form-item label="状态">
					<el-select v-model="searchForm.orderStatus" placeholder="全部" clearable>
						<el-option v-for="item in selectList" :key="item.id" :label="item.name" :value="item.id">
						</el-option>
					</el-select>
				</el-form-item>
				<el-form-item label="创建时间">
					<my-date-picker ref="myDatePicker"></my-date-picker>
				</el-form-item>
				<el-form-item>
					<el-button size="small" type="primary" @click="search()">查询</el-button>
					<el-button size="small" @click="reset()">重置</el-button>
					<el-button v-if="$hasMethod('#export')" size="small" type="warning" @click="exportFile()">导出
					</el-button>
				</el-form-item>
			</el-form>
		</div>
		<el-divider></el-divider>
		<div class="child_page">
			<div class="list_wrap">
				<div class="flex list_header">
					<p style="width:27%;padding-left:20px">商品信息</p>
					<p class="text-center" style="width:3%">数量</p>
					<p class="text-center" style="width:10%">租金</p>
					<p class="text-center" style="width:9%">租期</p>
					<p class="text-center" style="width: 8%">押金</p>
					<p class="text-center" style="width:15%">实付金额</p>
					<p class="text-center" style="width:5%">是否买断</p>
					<p class="text-center" style="width:7%">下期付款金额</p>
					<p style="width:16%;padding-left:20px">收货人信息</p>
				</div>
				<div v-for="item in tableData" :key="item.id" class="list_item">
					<div class="flex justify-between align-center item_header">
						<el-tag :type="getOrderStatusType(item.status)">{{item.statusName}}</el-tag>
						<div class="flex-1 flex align-center">
							<p>ID：{{item.id}}</p>
							<p>创建时间：{{item.create_time}}</p>
							<p>订单号：{{item.trade_no}}</p>
							<p class="sign_icons">
								<el-tooltip class="item" effect="dark" content="承租人合同签署中" placement="top-start">
									<img v-if="item.guarantee_status==1" src="../../assets/images/db-signing.png"
										alt="承租人合同签署中" />
								</el-tooltip>
								<el-tooltip class="item" effect="dark" content="承租人合同已签署" placement="top-start">
									<img v-if="item.guarantee_status==2" src="../../assets/images/db-signed.png"
										alt="承租人合同已签署" />
								</el-tooltip>
								<el-tooltip class="item" effect="dark" content="承租人合同未签署" placement="top-start">
									<img v-if="item.guarantee_status!=1&&item.guarantee_status!=2"
										src="../../assets/images/db-unsign.png" alt="承租人合同未签署" />
								</el-tooltip>
								<el-tooltip class="item" effect="dark" content="合同未签署" placement="top-start">
									<img v-if="item.sign_status!=1&&item.sign_status!=2"
										src="../../assets/images/unsign.png" alt="合同未签署" />
								</el-tooltip>
								<el-tooltip class="item" effect="dark" content="合同签署中" placement="top-start">
									<img v-if="item.sign_status==1" src="../../assets/images/signing.png" alt="合同签署中" />
								</el-tooltip>
								<el-tooltip class="item" effect="dark" content="合同已签署" placement="top-start">
									<img v-if="item.sign_status==2" src="../../assets/images/signed.png" alt="合同已签署" />
								</el-tooltip>
								<el-tooltip class="item" effect="dark" content="续租订单" placement="top-start">
									<img v-if="item.is_renewal==1" src="../../assets/images/renew.png" alt="续租订单" />
								</el-tooltip>
							</p>
							<p>订单来源：{{ item.source }}<span v-if="item.sale_user_id">-{{ item.sale_user_id }}</span></p>
							</p>
							<p>快递信息：
								<span class="blue-font pointer" @click="checkLogistics(item.id)">
									{{item.logistic.delivery_type==2?'上门自取':item.logistic.delivery_type==3?'上门安装':item.logistic.logistics_no?`${item.logistic.logistics_no}(${item.logistic.logistics_name})`:'无'}}
								</span>
							</p>
						</div>
						<p>
						</p>
					</div>
					<div class="flex item_row">
						<div class="flex" style="width:27%">
							<el-image style="width:100px;height:100px"
								:src="item.imgurl?$globalObj.imgBaseUrl+item.imgurl:''">
								<div slot="error" class="image-slot">
									<i class="el-icon-picture-outline"></i>
								</div>
							</el-image>
							<div class="flex-1" style="padding-left:10px;overflow:hidden;">
								<el-tooltip class="item" effect="dark" placement="top-start" :content="item.goods_title">
									<p class="text-ellipsis title blue-font"><span style="color: purple;">({{item.new_grade_title}})</span>{{item.goods_title}}</p>
								</el-tooltip>
								<p class="meal">套餐信息：{{item.setmeal_title}}</p>
								<p class="meal">租赁方式：{{ item.pact_type_name }}</p>
								<p class="device">设备编号：{{item.device_number}}
									<el-button v-if="$hasMethod('#editDevice')" size="mini" class="border-btn"
										style="margin-left:5px" @click="editDevice(item)">更改</el-button>
								</p>
							</div>
						</div>
						<div class="flex flex-center color-666 font-16" style="width:3%;">x{{item.amount}}</div>
						<div class="flex flex-column flex-center" style="width:10%">
							<p class="red-font">￥{{item.rent_total}}(共{{item.month_total}}期)</p>
							<p style="margin-top:10px">
								<el-button v-if="$hasMethod('#checkLease')" size="mini" class="border-btn"
									@click="viewLease(item.id)">查看租期</el-button>
							</p>
							<p style="margin-top: 10px">
								<el-button v-if="item.status == 4" size="mini" class="border-btn" style="padding: 0 5px;" @click="editorder(item, 2)">修改租期租金</el-button>
							</p>
						</div>
						<div style="width:9%" class="color-666 font-12 flex flex-center">
							{{item.begin_time}}至{{item.end_time}}(共{{item.month_total}}期)
						</div>
						<div style="width: 8%" class="flex flex-column flex-center">
							<p v-if="item.rights_auth_no" class="red-font">
								￥{{ item.foregift_pay ? item.foregift_pay : item.foregift }}
							</p>
							<p class="color-999 font-12">
								{{ !item.rights_auth_no ? "未授权免押" : item.foregift_deduct == 0 ? "押金冻结" : item.foregift_pay > 0 ? "部分免押" : "押金全免" }}
							</p>
							<p v-if="item.foregift_deduct > 0" class="color-999 font-12" style="text-decoration: line-through">
								￥{{ item.foregift_pay ? item.part_foregift : item.all_foregift }}
							</p>
						</div>
						<div style="width:15%" class="flex flex-column flex-center">
							<p class="red-font">￥{{item.lease.paid_rent}}</p>
							<p class="color-999 font-12">
								{{item.pay_type==1?'智能合同代扣':item.pay_type==2?'芝麻信用（'+(item.rights_auth_no!=0?'已授权代扣':'未授权代扣')+'）':'花呗'}}
							</p>
							<p style="margin-top:5px">
								<el-button size="mini" type="success" class="long-text-btn"
									@click="checkPaidBill(item.id, item.lease.paid_rent)">
									已付：￥{{item.lease.paid_rent}}/￥{{item.rent_total}}</el-button>
							</p>
							<p style="margin-top:5px">
								<el-button size="mini" type="warning">已结租金￥{{item.lease.settle_amount}}</el-button>
							</p>
						</div>
						<div style="width:5%" class="flex flex-center font-12 color-666">
							{{item.is_buy_out==1?'可买断':'不可买断'}}</div>
						<div style="width:7%" class="flex flex-column flex-center">
							<template v-if="JSON.stringify(item.lease.next)!=='[]'">
								<p class="font-12 color-666">￥{{item.lease.next.amount}}</p>
								<p class="font-12 color-666">{{item.lease.next.date}}</p>
							</template>
						</div>
						<div style="width:16%">
							<p class="flex align-center justify-between font-12 color-666">
								<span>{{item.realname}}</span>
								<span>{{item.address_mobile}}</span>
							</p>
							<p class="font-12 color-666" style="word-break:break-all;">
								{{item.prov+item.city+item.area+item.address}}</p>
							<p style="margin-top:10px">
								<el-button v-if="$hasMethod('#editAddress')" size="mini" class="border-btn"
									@click="editAddress(item)">修改地址</el-button>
							</p>
						</div>
					</div>
					<div class="flex item_row">
						<div style="width:57%" class="detail">
							<p class="color-666">
								认证资料：{{item.cert_name}}（{{item.cert_no}}）手机号：{{item.mobile}}，人脸识别{{item.authentic.status==1?'通过':'不通过'}}
								性别：{{item.authentic.sex}} 年龄：{{item.authentic.age}}
								<el-button v-if="item.idcard_back&&item.idcard_front&&$hasMethod('#checkAuthInfo')"
									size="mini" class="border-btn" @click="checkAuthInfo(item)">认证资料</el-button>
							</p>
							<p class="color-666" :class="{'red-font':item.is_skip==1}">
								 <el-button size="mini" class="border-btn" style="padding: 0 1px;" @click="radarDialog(item)">查看雷达风控数据
								</el-button>
								<el-button size="mini" class="border-btn" style="padding: 0 1px;" @click="handleOrderData(item)">查看布尔风控数据
								</el-button>
								<el-button v-if="item.is_credit_select==1" size="mini" class="border-btn" style="padding: 0 1px;"
									@click="creditDialog(item)">请求查询征信</el-button>
								<el-button v-else size="mini" class="border-btn" style="padding: 0 1px;border-color: #ff9f37;color: #ff9f37;"
									@click="creditDialog2(item)">查看征信风控数据</el-button>
							</p>
							<p class="color-666 red-font">紧急联系人：{{ item.emergency_contact }}</p>
							<p class="color-666 font-12">用户备注：{{item.remark}}</p>
							<p class="color-666 font-12">客服备注：
								<template v-if="JSON.stringify(item.orderRemark)!=='[]'">
									{{item.orderRemark.create_time}}，{{item.orderRemark.username}}添加备注：{{item.orderRemark.remark}}
									<span v-if="$hasMethod('#checkRemark')" class="blue-font pointer"
										style="margin-right:10px" @click="viewRemark(item.id)">查看备注记录</span>
								</template>
								<el-button v-if="$hasMethod('#addRemark')" size="mini" class="border-btn"
									@click="addRemark(item.id)">添加备注</el-button>
							</p>
							<p class="color-666" style="margin-top:5px">
								<template v-if="JSON.stringify(item.leaseFlow)!=='[]'">
									第{{item.leaseFlow.which_period}}期通过支付宝{{item.leaseFlow.pay_type==1?'智能合同代扣':item.leaseFlow.pay_type==2?'芝麻信用':item.leaseFlow.pay_type==3?'花呗':'主动支付'}}{{item.leaseFlow.status==1?'支付'+item.leaseFlow.rent+'元':item.leaseFlow.status==2?'退款'+item.leaseFlow.rent+'元':item.leaseFlow.status==3?'买断':'未支付'}}
								</template>
								<el-button v-if="$hasMethod('#checkFlow')" size="mini" class="border-btn"
									@click="viewFlow(item.trade_no)">流水记录</el-button>
							</p>
						</div>
						<div style="width:43%" class="flex flex-column justify-center">
							<p v-if="item.orderRefundReason" style="padding:0 10px">
								退款原因：{{item.orderRefundReason}}
							</p>
							<p v-if="item.is_renewal==1" style="margin-left: 10px">
								原订单号：<span class="blue-font">{{item.parent_order_no}}</span>
							</p>
							<p v-if="item.is_abnormal==1 && [41,42,43,44,45,49,60,65].indexOf(item.status) > -1"
								class="red-font" style="margin-left: 10px;">该订单提前归还</p>
							<p v-if="item.check_refuse_reason && item.status==43" class="red-font"
								style="margin-left: 10px">审核拒绝原因：{{item.check_refuse_reason}}</p>
							<p class="btns flex align-center">
								<el-button v-if="item.status==10&&$hasMethod('#delivery')" size="mini" type="warning"
									@click="openDelivery(item.id)">订单发货</el-button>
								<el-button v-if="item.status == 10 && $hasMethod('#refuseorder')" size="mini"
									type="danger" @click="refuseorder(item.id)">拒绝订单</el-button>
								<el-button v-if="item.status==20&&$hasMethod('#receipt')" size="mini" type="warning"
									@click="confirmReceipt(item.id)">确认收货</el-button>
								<el-button v-if="item.status==44&&$hasMethod('#confirmR')" size="mini" type="warning"
									@click="confirmReturn(item.id)">确认归还</el-button>
								<!-- <el-button
                  v-if="item.status==45"
                  size="mini"
                  type="warning"
                  @click="finishReturn(item.id)"
                >归还完成</el-button> -->
								<el-button
									v-if="[20,30,31,32,33,34,39,40,41,42,43,44,45,49,50,51,52,56,57,58].indexOf(item.status)>-1&&$hasMethod('#checkLogistics')"
									size="mini" type="primary" @click="checkLogistics(item.id)">查看物流</el-button>
								<el-button
									v-if="[3,9,10,11,12,13,14,15,16,20,30,31,32,33,34,39,40,41,42,43,44,45,49,50,51,52,56,57,58,60,61,62,63,64,65].indexOf(item.status)>-1&&item.pact_url!=0&&item.sign_status==2"
									size="mini" type="primary" @click="checkPact($globalObj.imgBaseUrl+item.pact_url)">
									查看合同</el-button>
								<el-button v-if="[11,12,13,14].indexOf(item.status)>-1" size="mini" type="warning"
									@click="handleRefundOrder(item.trade_no)">去处理</el-button>
								<el-button
									v-if="[9,10,11,12,13,14,20,30,31,32,33,34,39,40,41,42,43,44,45,49,50,51,52,56,57,58].indexOf(item.status)>-1&&$hasMethod('#finish')"
									size="mini" type="success" @click="finishOrder(item.id)">交易完成</el-button>
								<el-button v-if="item.status==41&&$hasMethod('#agree')" size="mini" type="warning"
									@click="agreeReturn(item.id)">同意归还</el-button>
								<el-button v-if="item.status==41&&$hasMethod('#refuse')" size="mini" type="danger"
									@click="refuseReturn(item.id)">拒绝归还</el-button>
								<el-button v-if="[2].indexOf(item.status) > -1 &&$hasMethod('#close') || item.status==10" size="mini"
									type="danger" @click="closeOrder(item.id)">关闭订单</el-button>
								<el-button v-if="item.status == 4 " size="mini" type="success" @click="checkPass(item.id)">审核通过</el-button>
								<el-button v-if="[4].indexOf(item.status) > -1" size="mini" type="danger" @click="returnOrder(item.id)">转回平台</el-button>
                <el-button v-if="[4].indexOf(item.status) > -1" :disabled="item.pact_url_3?false:true" size="mini" type="success" @click="setCreditData(item.id)">上征信1</el-button>
                <el-button v-if="[4].indexOf(item.status) > -1" size="mini" :disabled="item.is_credit_up==2?true:false" type="primary" @click="createCreditCompany(item.id)">上征信2</el-button>
							</p>
						</div>
					</div>
				</div>
			</div>
			<custom-page ref="customPage" :total="total" @getList="getList"></custom-page>
		</div>
		<check-lease ref="checkLease" :order-id="selectedId"></check-lease>
		<set-address ref="setAddress" :edit-item="editItem" @getList="getList"></set-address>
		<set-device ref="setDevice" :edit-item="editItem" @getList="getList"></set-device>
		<set-remark ref="setRemark" :order-id="selectedId" @getList="getList">
		</set-remark>
		<check-remark ref="checkRemark" :order-id="selectedId"></check-remark>
		<check-flow ref="checkFlow" :order-no="selectedId"></check-flow>
		<delivery ref="delivery" :order-id="selectedId" @getList="getList"></delivery>
		<receipt ref="receipt" :order-id="selectedId" @getList="getList"></receipt>
		<auth-info ref="authInfo" :edit-item="editItem"></auth-info>
		<check-bill ref="checkBill" :order-id="selectedId"></check-bill>
		<check-logistics ref="checkLogistics" :order-id="selectedId"></check-logistics>
		<!-- 雷达风控 -->
		<radar ref="radarDialog" :edit-item="editItem" @getList="getList" @resp-code="respCode"></radar>
		<!-- 布尔风控 -->
		<select-risk ref="selectRisk" :edit-item="editItem" @getList="getList"></select-risk>
		<credit-dialog ref="creditDialog" :edit-item="editItem" @getList="getList" />
		<!-- 查询学历 -->
		<edu-details ref="eduDetails" :edu-id="eduId" :edit-item="editItem" />
		<edit-order ref="editOrder" :edit-item="editItem" @getList="getList" />
		<!-- 拒绝归还 -->
		<el-dialog title="拒绝归还" :visible.sync="returnVisible" width="500px">
			<el-form :model="returnForm">
				<el-form-item label="拒绝原因" label-width="120px">
					<el-input v-model="returnForm.checkRefuseReason" autocomplete="off" placeholder="请输入拒绝原因"
						type="text" maxlength="50" show-word-limit></el-input>
				</el-form-item>
			</el-form>
			<div slot="footer" class="dialog-footer">
				<el-button @click="closeReturn">取 消</el-button>
				<el-button type="primary" @click="confirmReturnVisible">确 定</el-button>
			</div>
		</el-dialog>
		<!-- 布尔数据 -->
		<el-dialog width="500px" title="提示" :visible.sync="orderDialogVisible" :close-on-click-modal="false">
		  <el-form :model="form" ref="ruleFormOrder" label-width="100px">
			<el-form-item label="">
			  <!-- <p>首次查看大数据会使风控余量减1次，后续不扣余量并且可在"营销->布尔数据"内查看，是否确认查看大数据?</p> -->
			</el-form-item>
			<el-form-item label="请选择分类" prop="goods_type">
			  <el-select v-model="form.goodsType" placeholder="全部" @change="handleChange" clearable>
				<el-option v-for="item in goodsType" :key="item.value" :label="item.label" :value="item.value"></el-option>
			  </el-select>
			</el-form-item>
			</el-form>
			<div slot="footer" class="dialog-footer">
				<el-button size="small" @click="orderDialogVisible = false">取 消</el-button>
				<el-button size="small" type="primary" @click="handleSubmit">确 定</el-button>
			</div>
		</el-dialog>
		<handle-credit ref="handleCredit" :order-id="selectedId" @getList="getList"></handle-credit>
	</div>
</template>
<script>
	import globalData from "../../utils/global";
	import customPage from "@/components/customPage";
	import myDatePicker from "@/components/myDatePicker";
	import {
		orderList,
		getOrderStatus,
		orderListExport,
		orderFinish,
		orderReturnAgree,
		orderReturnRefuse,
		orderComfirmReturn,
		orderReturnFinish,
		orderClose,
		setCreditData,
		getCreditData
	} from "@/api/order";
	import {
		rejectRefund, orderCheckPass, returnOrder
	} from "../../api/orderRefund"
	import checkLease from "./dialogs/checklease";
	import setAddress from "./dialogs/setAddress";
	import setDevice from "./dialogs/setDevice";
	import setRemark from "./dialogs/setRemark";
	import checkRemark from "./dialogs/checkRemark";
	import checkFlow from "./dialogs/checkFlow";
	import delivery from "./dialogs/delivery";
	import receipt from "./dialogs/receipt";
	import authInfo from "./dialogs/authInfo";
	import checkBill from "./dialogs/checkBill";
	import radar from "./dialogs/radar"
	import selectRisk from './dialogs/selectRisk'
	import checkLogistics from "./dialogs/checkLogistics";
	import eduDetails from './dialogs/eduDetails'
	import editOrder from './dialogs/editOrder.vue'
	import creditDialog from './dialogs/creditData'
	import handleCredit from './dialogs/handleCredit'
	
	export default {
		components: {
			myDatePicker,
			customPage,
			checkLease,
			setAddress,
			setDevice,
			setRemark,
			checkRemark,
			checkFlow,
			delivery,
			receipt,
			authInfo,
			checkBill,
			checkLogistics,
			radar,
			selectRisk,
			eduDetails,
			editOrder,
			creditDialog,
			handleCredit
		},
		data() {
			return {
				searchForm: {
					orderNo: '',
					goodsName: '',
					receivingName: '',
					receivingMobile: '',
					riskName: '',
					riskMobile: '',
					orderStatus: '',
					orderCreateTime: ''
				},
				form: {
					goodsType: '',
				},
				goodsType: [
					{
					  label: '其他',
					  value: 0
					},
					{
					  label: '游戏电玩',
					  value: 1
					},
					{
					  label: '娱乐影音',
					  value: 2
					},
					{
					  label: '电脑平板',
					  value: 3
					},
					{
					  label: '手机优选',
					  value: 4
					}
				],
				statusList: globalData.orderStatus,
				total: 0,
				tableData: [],
				activeName: 'all',
				tabList: [{
						id: 'all',
						name: '全部订单',
						count: 0
					},
					// 20221017
					{
						id: 'notCheck',
						name: '待审核',
						count: 0
					},
					{
						id: 'notPay',
						name: '待付款订单',
						count: 0
					},
					{
						id: 'notRisk',
						name: '待风控订单',
						count: 0
					},
					{
						id: 'deliveredNot',
						name: '待发货订单',
						count: 0
					},
					{
						id: 'deliveredIs',
						name: '已发货订单',
						count: 0
					},
					{
						id: 'orderIng',
						name: '租用中订单',
						count: 0
					},
					{
						id: 'orderCompleted',
						name: '交易完成订单',
						count: 0
					},
					{
						id: 'orderCancel',
						name: '取消订单',
						count: 0
					},
					{
						id: 'orderReturn',
						name: '归还订单',
						count: 0
					},
					{
						id: 'orderBuyout',
						name: '买断订单',
						count: 0
					},
					{
						id: 'orderRenewal',
						name: '续租订单',
						count: 0
					},
					{
						id: 'orderRefund',
						name: '退款订单',
						count: 0
					}
				],
				selectedId: '',
				editItem: {},
				selectList: [],
				returnVisible: false,
				refuseId: '',
				returnForm: {
					checkRefuseReason: ''
				},
				orderDialogVisible: false,
				eduDialogVisible:false,
				typeId: '',
				content:'如果没有输入证书编号，则只能查询简要信息如：(姓名、证件号码、学历层次)',
				eduId:'',
				eduForm:{
					order_id:'',
					certificateNo:''
				},
			}
		},
		methods: {
			openTip() {
				this.$alert('商家暂未开启风控', '提示', {
					confirmButtonText: '确定',
				}).then(() => {});
			},
			handleRefundOrder(tradeNo) {
				this.$router.push({
					name: 'refundList',
					params: {
						tradeNo
					}
				});
			},
			// 查看合同
			checkPact(url) {
				window.open(url);
			},
			// 订单完结
			finishOrder(id) {
				this.$confirm('交易完成后进行解约现有款项不退款，并解约代扣无法发起未代扣的期数！', '请确认是否交易完成？', {
					confirmButtonText: '确定',
					cancelButtonText: '取消',
				}).then(() => {
					orderFinish(id).then(res => {
						this.getList();
					});
				}).catch(() => {});
			},
			// 同意归还
			agreeReturn(id) {
				this.$confirm('确定要同意归还吗？', '同意归还', {
					confirmButtonText: '确定',
					cancelButtonText: '取消',
				}).then(() => {
					orderReturnAgree(id).then(res => {
						this.getList();
					});
				}).catch(() => {});
			},
			// 拒绝归还
			refuseReturn(id) {
				this.refuseId = id
				this.returnVisible = true
			},
			// 订单关闭
			closeOrder(id) {
				this.$confirm("确定要关闭订单吗？", "关闭", {
					confirmButtonText: "确定",
					cancelButtonText: "取消",
				}).then(() => {
					orderClose(id).then(res => {
						this.getList();
					});
				}).catch(() => {});
			},
			closeReturn() {
				this.returnVisible = false
				this.returnForm.checkRefuseReason = ''
			},
			confirmReturnVisible() {
				if (!this.returnForm.checkRefuseReason) {
					this.$message.warning("拒绝原因不能为空");
					return false;
				}
				orderReturnRefuse({
					orderId: this.refuseId,
					checkRefuseReason: this.returnForm.checkRefuseReason
				}).then((res) => {
					this.getList();
					this.closeReturn()
				}).catch(() => {});
			},
			// 确认归还
			confirmReturn(id) {
				this.$confirm('确定要归还吗？', '确认归还', {
					confirmButtonText: '确定',
					cancelButtonText: '取消',
				}).then(() => {
					orderComfirmReturn(id).then(res => {
						this.getList();
					});
				}).catch(() => {});
			},
			// 查看物流
			checkLogistics(id) {
				this.selectedId = id;
				this.$refs.checkLogistics.dialogVisible = true;
			},
			// 查看已付账单详情
			checkPaidBill(id, paid_rent) {
				if (this.$hasMethod('#checkBill') && paid_rent > 0) {
					this.selectedId = id;
					this.$refs.checkBill.dialogVisible = true;
				}
			},
			// 查看认证资料
			checkAuthInfo(item) {
				this.editItem = {
					idcard_back: item.idcard_back,
					idcard_front: item.idcard_front
				}
				this.$refs.authInfo.dialogVisible = true;
			},
			// 确认收货
			confirmReceipt(id) {
				this.selectedId = id;
				this.$refs.receipt.dialogVisible = true;
			},
			// 订单发货
			openDelivery(id) {
				this.selectedId = id;
				this.$refs.delivery.dialogVisible = true;
			},
			//拒绝订单
			refuseorder(id) {
				this.$confirm("请确认是否拒绝该订单?", {
						confirmButtonText: "确定",
						cancelButtonText: "取消",
					})
					.then(() => {
						rejectRefund({
								order_id: id,
							})
							.then((res) => {
								console.log(res);
							})
							.catch(() => {});
					})
					.catch(() => {});
			},
			// 查看流水记录
			viewFlow(trade_no) {
				this.selectedId = trade_no;
				this.$refs.checkFlow.dialogVisible = true;
			},
			// 查看客服备注
			viewRemark(id) {
				this.selectedId = id;
				this.$refs.checkRemark.dialogVisible = true;
			},
			// 添加客服备注
			addRemark(id) {
				this.selectedId = id;
				this.$refs.setRemark.dialogVisible = true;
			},
			// 更改设备编号
			editDevice(item) {
				this.editItem = {
					orderId: item.id,
					deviceNumber: item.device_number ? item.device_number.split(',') : [],
					amount: item.amount
				}
				this.$refs.setDevice.dialogVisible = true;
			},
			// 修改地址
			editAddress(item) {
				this.editItem = {
					orderId: item.id,
					realname: item.realname,
					mobile: item.address_mobile,
					address: item.address,
					prov: item.prov,
					city: item.city,
					area: item.area,
					province: [item.prov, item.city, item.area]
				}
				this.$refs.setAddress.dialogVisible = true;
			},
			// 查看租期
			viewLease(id) {
				this.selectedId = id;
				this.$refs.checkLease.dialogVisible = true;
			},
			// 征信数据
			creditDialog(item) {
				getCreditData(item.id).then(res=>{
				})
				setTimeout(()=>{
					getCreditData(item.id).then(res=>{
					})
				},1000)
				setTimeout(()=>{
					this.getList()
				},4000)
				
			},
			// 征信数据
			creditDialog2(item) {
				this.$confirm('是否确认查看征信风控数据?', '提示', {
						confirmButtonText: '确定',
						cancelButtonText: '取消'
					})
					.then(() => {
						this.editItem = {
							orderId: item.id,
							trade_no: item.trade_no,
							cert_name: item.cert_name,
							cert_no: item.cert_no,
							mobile: item.mobile
						}
						this.$refs.creditDialog.dialogVisible = true
						
					})
					.catch(() => {})
			},
			// 查看雷达风控数据
			radarDialog(item) {
			  console.log(item);
			  this.$confirm('是否确认查看雷达风控大数据?', '提示', {
				confirmButtonText: '确定',
				cancelButtonText: '取消'
			  })
				.then(() => {
				  this.editItem = {
					orderId:item.id,
					trade_no: item.trade_no,
					cert_name: item.cert_name,
					cert_no: item.cert_no,
					mobile: item.mobile
				  }
				  console.log(this.editItem);
				  this.$refs.radarDialog.dialogVisible = true
				  this.respCode()
				})
				.catch(() => { })
			},
			respCode(data) {
			  console.log(data);
			  if (data.length == 0) {
				this.$message({
				  message: "该用户没有雷达风控数据风险",
				  type: "error"
				})
			  }
			},
			getOrderStatusType(status) {
				const obj = this.statusList.find(item => item.id == status);
				return obj ? obj.type : 'warning';
			},
			getOrderStatusName(status) {
				const obj = this.statusList.find(item => item.id == status);
				return obj ? obj.name : '';
			},
			// 获取数据
			getList(flag) {
				// flag为true, 则不刷新表格
				const {
					page,
					pageSize
				} = this.$refs.customPage;
				if (!flag) {
					this.tableData = [];
				}
				orderList({
					page,
					pageSize,
					...this.searchForm,
				orderStatusGroup: "deliveredIs"
				}).then(res => {
					const {
						list,
						count
					} = res;
					this.tableData = list.data || [];
					this.total = list.total || 0;
					for (let item of this.tabList) {
						item.count = count[item.id];
					}
				})
			},
			// 查询
			search() {
				const pickerVal = this.$refs.myDatePicker.getVal();
				if (pickerVal !== 'error') {
					this.searchForm.orderCreateTime = pickerVal;
					this.$refs.customPage.page = 1;
					this.getList();
				}
			},
			// 重置
			reset() {
				if (this.$refs.myDatePicker) {
					this.$refs.myDatePicker.reset();
				}
				this.searchForm = {
					orderNo: '',
					goodsName: '',
					receivingName: '',
					receivingMobile: '',
					riskName: '',
					riskMobile: '',
					orderStatus: '',
					orderCreateTime: ''
				};
				this.getList();
			},
			// 导出
			exportFile() {
				const pickerVal = this.$refs.myDatePicker.getVal();
				if (pickerVal !== 'error') {
					this.searchForm.orderCreateTime = pickerVal;
					orderListExport({
						...this.searchForm,
						orderStatusGroup: this.activeName
					});
				}
			},
			handleClick(tab) {
				this.activeName = tab.name;
				this.$refs.customPage.page = 1;
				this.getList();
			},
			getSelect() {
				getOrderStatus().then(res => {
					const list = [];
					for (let key in res) {
						list.push({
							id: key,
							name: res[key]
						})
					}
					this.selectList = list || [];
				})
			},
			// 布尔数据
			handleOrderData(item) {
				this.dataItem = item
				this.orderDialogVisible = true
			},
			handleSubmit() {
			  this.$refs['ruleFormOrder'].validate((valid) => {
				if (valid) {
					  this.editItem = {
						orderId: this.dataItem.id,
						cert_name: this.dataItem.cert_name,
						cert_no: this.dataItem.cert_no,
						mobile: this.dataItem.mobile,
						rent_total: this.dataItem.rent_total,
						month_total: this.dataItem.month_total,
						website_price: this.dataItem.website_price,
						new_grade: this.dataItem.new_grade,
						goods_type: this.typeId
					  }
					  this.orderDialogVisible = false
					  this.$refs.selectRisk.dialogVisible = true
				} else {
				  this.$message({
					message: "请选择类型",
					type: "error"
				  })
				  return false
				}
			  })
			},
			handleChange(value) {
			  this.typeId = value
			},
			// 审核拒绝
			refuseOrder2(id) {
			  this.$confirm('确定要拒绝订单吗？', '拒绝', {
				confirmButtonText: '确定',
				cancelButtonText: '取消'
			  })
				.then(() => {
				  orderClose(id).then((res) => {
					this.getList()
				  })
				})
				.catch(() => { })
			},
			// 审核通过
			checkPass(id) {
				orderCheckPass({
				  orderId: id
				})
				  .then((res) => {
				    this.getList()
				  })
				  .catch(() => { })
			},
			// 转回平台
			returnOrder(id) {
				this.$confirm('是否拒绝该订单并转回平台?', {
					confirmButtonText: '确定',
					cancelButtonText: '取消'
				})
					.then(() => {
						returnOrder({
							orderId: id
						})
							.then((res) => {
								// console.log(res);
								this.getList()
							})
							.catch(() => { })
					})
					.catch(() => { })
			},
			// 更改供应商
			editorder(item, num) {
				console.log(item);
				this.editItem = {
					orderId: item.id,
			  pact_type: item.pact_type,
			  setmeal_price: item.rent_total,
			  shopname: item.shopname,
			  seller_id: item.seller_id,
			  member_id: [],
			  rent: '',
			  num: num,
				setmeal_foregift:item.setmeal_foregift,
				month_total:item.month_total,
				is_insurance_choose:item.is_insurance_choose
				}
				this.$refs.editOrder.dialogVisible = true
			},
			// 签署担保合同
			setCreditData(id) {
				this.$confirm('订单上征信后无法取消，确定要上征信吗？', '确认上征信', {
					confirmButtonText: '确定',
					cancelButtonText: '取消'
				})
					.then(() => {
						setCreditData(id).then((res) => {
							this.getList()
						})
					})
					.catch(() => { })
			},
			createCreditCompany(id){
				console.log(id);
				this.selectedId=id
				this.$confirm('订单上征信2后无法取消，确定要上征信2吗？', '确认上征信2', {
					confirmButtonText: '确定',
					cancelButtonText: '取消'
				})
					.then(() => {
						this.$refs.handleCredit.dialogVisible=true
						})
					.catch(() => { })
			},
		},
		mounted() {
			this.form.goodsType = this.goodsType[4].label
			this.typeId = this.goodsType[4].value
			if (this.$route.params.orderId) {
				this.searchForm.orderNo = this.$route.params.orderId;
			}
			this.getSelect();
			this.getList();
		}
	}
</script>
<style lang="scss" scoped>
	.common_form_search {
		padding: 15px 30px 0;
	}

	.child_page {
		padding-bottom: 15px;
		padding-left: 30px;
		padding-right: 30px;

		p,
		div {
			box-sizing: border-box;
		}
	}

	.list_wrap {
		position: relative;
	}

	.list_header {
		position: sticky;
		top: 0;
		left: 0;
		right: 0;
		min-height: 50px;
		z-index: 2;
		background: #f5f5f5;
		border: 1px solid #e6e6e6;

		p {
			display: flex;
			align-items: center;
			justify-content: center;
			font-size: 16px;
		}

		p:not(:first-child) {
			border-left: 1px solid #e6e6e6;
		}
	}

	.list_item {
		display: block;
		border: 1px solid #e6e6e6;
		margin-top: 10px;
	}

	.item_row {
		border-top: 1px solid #e6e6e6;

		&>div {
			padding: 10px;
			color: #666666;

			&:not(:first-child) {
				border-left: 1px solid #e6e6e6;
			}
		}
	}

	.detail,
	.btns {
		padding: 10px;
	}

	.btns {

		// border-left: 1px solid #e6e6e6;
		.el-button+.el-button {
			margin-left: 10px;
		}
	}

	.border-btn {
		height: 25px;
		padding-top: 0;
		padding-bottom: 0;
		background: #ffffff;
		border: 1px solid $mainBlue;
		border-radius: 3px;
		color: $mainBlue;
		font-size: 12px;
	}

	.sign_icons img {
		width: 21px;
		height: 23px;
		margin-right: 2px;
	}

	.item_header {
		padding: 5px 10px;
		background-color: #f5f5f5;

		&>div p {
			color: #666666;
			font-size: 12px;
			padding-left: 20px;
		}
	}

	.title {
		font-size: 16px;
		line-height: 23px;
		padding-bottom: 15px;
	}

	.meal,
	.device {
		font-size: 12px;
		color: #999999;
		line-height: 23px;
	}

	.item_row p {
		line-height: 23px;
	}

	.item_row div {
		line-height: 20px;
	}
</style>
